package lmscript.postscript.syntax;

import lmscript.postscript.syntax.stack.OperandStack;

public abstract class StackOperator extends PSOperator {

	public static Class[] operators = new Class[] { Pop.class, Exch.class, Dup.class, Index.class,
			Roll.class, Clear.class, Count.class, Mark.class, ClearToMark.class, CountToMark.class };

	public StackOperator(String name) {
		super(name);
	}

}

class Pop extends StackOperator {

	public Pop(String name) {
		super("pop");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Exch extends StackOperator {

	public Exch(String name) {
		super("exch");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Dup extends StackOperator {

	public Dup(String name) {
		super("dup");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Index extends StackOperator {

	public Index(String name) {
		super("index");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Roll extends StackOperator {

	public Roll(String name) {
		super("roll");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Clear extends StackOperator {

	public Clear(String name) {
		super("clear");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Count extends StackOperator {

	public Count(String name) {
		super("count");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class Mark extends StackOperator {

	public Mark(String name) {
		super("mark");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class ClearToMark extends StackOperator {

	public ClearToMark(String name) {
		super("cleartomark");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}

class CountToMark extends StackOperator {

	public CountToMark(String name) {
		super("counttomark");
	}

	@Override
	public boolean execute(OperandStack os) {
		return false;
	}
}